home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CD School House 9
/
CD School House 9.0 - Wayzata Technology (1994).iso
/
pc
/
games
/
mac
/
__adventureland__
/
__adventure_helpers__
/
gurps__3rd_edition
/
stack.txt
< prev
Wrap
Text File
|
1991-01-08
|
14KB
|
425 lines
-- stack: in
-- format: 8 (HyperCard 1)
-- flags: 0x1000 (none)
-- protect password hash: 0
-- maximum user level: 5 (scripting)
-- window: Rect(x1=0, y1=0, x2=0, y2=0)
-- screen: Rect(x1=0, y1=0, x2=0, y2=0)
-- card dimensions: w=0 h=0
-- scroll: x=0 y=0
-- background count: 2
-- first background id: 2662
-- card count: 139
-- first card id: 11043
-- list block id: 59740
-- print block id: 12290
-- font table block id: 0
-- style table block id: 0
-- free block count: 1
-- free size: 1600 bytes
-- total size: 385024 bytes
-- stack block size: 12288 bytes
-- created by hypercard version: 0x00000000
-- compacted by hypercard version: 0x01258000
-- modified by hypercard version: 0x01228000
-- opened by hypercard version: 0x01228000
-- patterns[0]: 0x0000000000000000
-- patterns[1]: 0x8000000008000000
-- patterns[2]: 0x8800220088002200
-- patterns[3]: 0x8888222288882222
-- patterns[4]: 0x88AA22AA88AA22AA
-- patterns[5]: 0xCCAA33AACCAA33AA
-- patterns[6]: 0xEEAABBAAEEAABBAA
-- patterns[7]: 0xEEBBBBEEEEBBBBEE
-- patterns[8]: 0xFFBBFFEEFFBBFFEE
-- patterns[9]: 0xFFBBFFFFFFBBFFFF
-- patterns[10]: 0x8010022001084004
-- patterns[11]: 0xFFFFFFFFFFFFFFFF
-- patterns[12]: 0x8822882288228822
-- patterns[13]: 0x1122448811224488
-- patterns[14]: 0xC4800C6843023026
-- patterns[15]: 0xB130031BD8C00C8D
-- patterns[16]: 0xAA00AA00AA00AA00
-- patterns[17]: 0x8822552288225522
-- patterns[18]: 0x8855225588552255
-- patterns[19]: 0x77DD77DD77DD77DD
-- patterns[20]: 0x8000000000000000
-- patterns[21]: 0xAA55AA55AA55AA55
-- patterns[22]: 0x038448300C020101
-- patterns[23]: 0x8244394482010101
-- patterns[24]: 0x8814224188412214
-- patterns[25]: 0x8080413E080814E3
-- patterns[26]: 0x22048C7422179810
-- patterns[27]: 0xBE808808EB088880
-- patterns[28]: 0x25C8328964244C92
-- patterns[29]: 0xA29C41BE2AC914EB
-- patterns[30]: 0x40A00000040A0000
-- patterns[31]: 0x8040200002040800
-- patterns[32]: 0xAA00800088008000
-- patterns[33]: 0xFF80808080808080
-- patterns[34]: 0x081C22C180010204
-- patterns[35]: 0xFF808080FF080808
-- patterns[36]: 0xF87422478F172271
-- patterns[37]: 0xBF00BFBFB0B0B0B0
-- patterns[38]: 0xFF7FBE5DA2418000
-- patterns[39]: 0xFAF5FAF5A050A050
-- checksum: 0x0
----- HyperTalk script -----
On DoWeight
put field "Weight" of card "Work" into weight
if (weight > (line 5 of (field "Encumbrances" of card "Work")) ) then
put 0 into field "Move" of card "Work"
else
if (weight > (line 4 of (field "Encumbrances" of card "Work")) ) then
put DoMove(4) into field "Move" of card "Work"
else
if (weight > (line 3 of (field "Encumbrances" of card "Work")) ) then
put DoMove(3) into field "Move" of card "Work"
else
if (weight > (line 2 of (field "Encumbrances" of card "Work")) ) then
put DoMove(2) into field "Move" of card "Work"
else
if (weight > (line 1 of (field "Encumbrances" of card "Work")) ) then
put DoMove(1) into field "Move" of card "Work"
end if
end if
end if
end if
end if
Put (field "Move" of card "Work") into field "Dodge" of card "Work"
End DoWeight
function DoMove E
if (trunc(field "Speed" of card "Work"))>E then
put (trunc((field "Speed" of card "Work")-E)) into X
else
put 1 into X
end if
return X
End DoMove
function PointValue AT
if AT=empty then
put 0 into P
end if
if AT=1 then
put value(-80) into P
else if AT=2 then
put value(-70) into P
else if AT=3 then
put value(-60) into P
else if AT=4 then
put value(-50) into P
else if AT=5 then
put value(-40) into P
else if AT=6 then
put value(-30) into P
else if AT=7 then
put value(-20) into P
else if AT=8 then
put value(-15) into P
else if AT=9 then
put value(-10) into P
else if AT=10 then
put value(0) into P
else if AT=11 then
put 10 into P
else if AT=12 then
put 20 into P
else if AT=13 then
put 30 into P
else if AT=14 then
put 45 into P
else if AT=15 then
put 60 into P
else if AT=16 then
put 80 into P
else if AT=17 then
put 100 into P
else if AT=18 then
put 125 into P
else if AT=19 then
put 150 into P
else if AT=20 then
put 175 into P
end if
return P
end PointValue
on ExD
global points
put 0 into ender
set the cursor to 4
put 1 into i
put line i of field "Disadvantages" of card "Work" into b
repeat while (b<>empty)
if offset(the param of 2,b)=1 then
put 1 into ender
put line i of field "Dpoints" of card "Work" into d
answer "Keep" && b & ", Cost: "& d & "?" with "Yes" or "No"
set the cursor to 4
if it is "No" then
put d into negpoints
put empty into line i of field "Disadvantages" of card "Work"
put empty into line i of field "Dpoints" of card "Work"
put points-negpoints into points
put points into field "Points" of card "Work"
put line i+1 of field "Disadvantages" of card "Work" into c
repeat while (c<>empty)
put line i+1 of field "Disadvantages" of card "Work" into line i of field "Disadvantages" of card "Work"
put line i+1 of field "DPoints" of card "Work" into line i of field "DPoints" of card "Work"
put empty into line i+1 of field "Disadvantages" of card "Work"
put empty into line i+1 of field "DPoints" of card "Work"
put i+1 into i
put line i+1 of field "Disadvantages" of card "Work" into c
end repeat
end if
end if
put i+1 into i
put line i of field "Disadvantages" of card "Work" into b
end repeat
if (ender=0) then
put the param of 1 into line i of Field "Disadvantages" of card "Work"
put the param of 3 into line i of field "DPoints" of card "Work"
put points+(the param of 3) into points
put points into field "Points" of card "Work"
end if
visual effect iris close
pop card
end ExD
on AExD
global points
put 0 into ender
set the cursor to 4
put 1 into i
put line i of field "Advantages" of card "Work" into b
repeat while (b<>empty)
if offset(the param of 2,b)=1 then
put 1 into ender
put line i of field "Apoints" of card "Work" into d
answer "Keep" && b & ", Cost: "& d & "?" with "Yes" or "No"
set the cursor to 4
if it is "No" then
if ((the param of 2)="Eidetic Memory") then put 1 into field "Eidetic" of card "Work"
put d into negpoints
put empty into line i of field "Advantages" of card "Work"
put empty into line i of field "Apoints" of card "Work"
put points-negpoints into points
put points into field "Points" of card "Work"
put line i+1 of field "Advantages" of card "Work" into c
repeat while (c<>empty)
put line i+1 of field "Advantages" of card "Work" into line i of field "Advantages" of card "Work"
put line i+1 of field "APoints" of card "Work" into line i of field "APoints" of card "Work"
put empty into line i+1 of field "Advantages" of card "Work"
put empty into line i+1 of field "APoints" of card "Work"
put i+1 into i
put line i+1 of field "Advantages" of card "Work" into c
end repeat
end if
end if
put i+1 into i
put line i of field "Advantages" of card "Work" into b
end repeat
if (ender=0) then
put the param of 1 into line i of Field "Advantages" of card "Work"
put the param of 3 into line i of field "APoints" of card "Work"
put points+(the param of 3) into points
put points into field "Points" of card "Work"
if ((the param of 2)="Eidetic Memory") then
if ((the param of 1)="Eidetic Memory, Partial") then
put .5 into field "Eidetic" of card "Work"
else
put .25 into field "Eidetic" of card "Work"
end if
end if
end if
visual effect iris close
pop card
end AExD
function NextSpace b
put 1 into i
put line i of field "Disadvantages" of card "Work" into b
repeat until (b is empty)
put i+1 into i
put line i of field "Disadvantages" of card "Work" into b
end repeat
return i
end NextSpace
function Exclusive AT
global disadv,disadvp,points,killed
set the cursor to 4
put 1 into i
put line i of field "Disadvantages" of card "Work" into b
repeat while (b<>empty)
if offset(AT,b)=1 then
answer "Keep" && b & "?" with "Yes" or "No"
set the cursor to 4
if it is "No" then
put line i of field "DPoints" of card "Work" into negpoints
put empty into line i of field "Disadvantages" of card "Work"
put empty into line i of field "Dpoints" of card "Work"
put points-negpoints into points
put points into field "Points" of card "Work"
put line i+1 of field "Disadvantages" of card "Work" into c
repeat while (c<>empty)
put line i+1 of field "Disadvantages" of card "Work" into line i of field "Disadvantages" of card "Work"
put line i+1 of field "DPoints" of card "Work" into line i of field "DPoints" of card "Work"
put empty into line i+1 of field "Disadvantages" of card "Work"
put empty into line i+1 of field "Dpoints" of card "Work"
put i+1 into i
put line i+1 of field "Disadvantages" of card "Work" into c
end repeat
visual effect iris close
pop card
put empty into AT
return AT
else if it is "Yes" then
visual effect iris close
pop card
put empty into AT
return AT
end if
end if
put i+1 into i
put line i of field "Disadvantages" of card "Work" into b
end repeat
return AT
end Exclusive
function Nonexclusive AT
global disadv,disadvp,points,killed
set the cursor to 4
put 1 into i
put line i of field "Disadvantages" of card "Work" into b
repeat while (b<>empty)
if offset(AT,b)<>0 then
put line i of field "DPoints" of card "Work" into d
answer "Keep" && b & ", Cost:" && d & "?" with "Yes" or "No"
set the cursor to 4
if it is "No" then
put line i of field "DPoints" of card "Work" into negpoints
put empty into line i of field "Disadvantages" of card "Work"
put empty into line i of field "DPoints" of card "Work"
put points-negpoints into points
put points into field "Points" of card "Work"
put line i+1 of field "Disadvantages" of card "Work" into c
repeat while (c<>empty)
put line i+1 of field "Disadvantages" of card "Work" into line i of field "Disadvantages" of card "Work"
put line i+1 of field "DPoints" of card "Work" into line i of field "DPoints" of card "Work"
put empty into line i+1 of field "Disadvantages" of card "Work"
put empty into line i+1 of field "DPoints" of card "Work"
put i+1 into i
put line i+1 of field "Disadvantages" of card "Work" into c
end repeat
visual effect iris close
pop card
put empty into AT
return AT
end if
end if
put i+1 into i
put line i of field "Disadvantages" of card "Work" into b
end repeat
return AT
end Nonexclusive
function AExclusive AT
global disadv,disadvp,points,killed,langtalent
set the cursor to 4
put 1 into i
put line i of field "Advantages" of card "Work" into b
repeat while (b<>empty)
if offset(AT,b)=1 then
put line i of field "APoints" of card "Work" into d
answer "Keep" && b &", "&&"Cost:"&& d & "?" with "Yes" or "No"
set the cursor to 4
if it is "No" then
if AT="Language Talent" then put 0 into field "langtalent" of card "Work"
put d into negpoints
put empty into line i of field "Advantages" of card "Work"
put empty into line i of field "APoints" of card "Work"
put points-negpoints into points
put points into field "Points" of card "Work"
put line i+1 of field "Advantages" of card "Work" into c
repeat while (c<>empty)
put line i+1 of field "Advantages" of card "Work" into line i of field "Advantages" of card "Work"
put line i+1 of field "APoints" of card "Work" into line i of field "APoints" of card "Work"
put empty into line i+1 of field "Advantages" of card "Work"
put empty into line i+1 of field "APoints" of card "Work"
put i+1 into i
put line i+1 of field "Advantages" of card "Work" into c
end repeat
visual effect iris close
pop card
put empty into AT
return AT
else if it is "Yes" then
visual effect iris close
pop card
put empty into AT
return AT
end if
end if
put i+1 into i
put line i of field "Advantages" of card "Work" into b
end repeat
return AT
end AExclusive
function ANonexclusive AT
global disadv,disadvp,points,killed
set the cursor to 4
put 1 into i
put line i of field "Advantages" of card "Work" into b
repeat while (b<>empty)
if offset(AT,b)<>0 then
put line i of field "APoints" of card "Work" into d
answer "Keep" && b & ", Cost:" && d & "?" with "Yes" or "No"
set the cursor to 4
if it is "No" then
put line i of field "APoints" of card "Work" into negpoints
put empty into line i of field "Advantages" of card "Work"
put empty into line i of field "APoints" of card "Work"
put points-negpoints into points
put points into field "Points" of card "Work"
put line i+1 of field "Advantages" of card "Work" into c
repeat while (c<>empty)
put line i+1 of field "Advantages" of card "Work" into line i of field "Advantages" of card "Work"
put line i+1 of field "APoints" of card "Work" into line i of field "APoints" of card "Work"
put empty into line i+1 of field "Advantages" of card "Work"
put empty into line i+1 of field "APoints" of card "Work"
put i+1 into i
put line i+1 of field "Advantages" of card "Work" into c
end repeat
visual effect iris close
pop card
put empty into AT
return AT
end if
end if
put i+1 into i
put line i of field "Advantages" of card "Work" into b
end repeat
return AT
end ANonexclusive
function ANextSpace b
put 1 into i
put line i of field "Advantages" of card "Work" into b
repeat until (b is empty)
put i+1 into i
put line i of field "Advantages" of card "Work" into b
end repeat
return i
end ANextSpace